package org.light.framework.util;

/**
 * 获取距离工具类
 */
public class DistanceUtil {

	/**
	 * 获取百度地图两个位置之间的距离
	 * @param lat1
	 * @param lng1
	 * @param lat2
	 * @param lng2
	 * @return 距离
	 */
	public static double getDistance(Double lat1, Double lng1, Double lat2, Double lng2)
	{
		if(lat1 == null || lng1 == null || lat2 == null || lng2 == null)
			return Double.valueOf(0.0d);
		
		return Math.round(6378.138 * 2 * Math.asin(Math.sqrt(Math.pow(
				Math.sin((lat1 * Math.PI / 180 - lat2 * Math.PI / 180) / 2), 2)
				+ Math.cos(lat1 * Math.PI / 180)
				* Math.cos(lat2 * Math.PI / 180)
				* Math.pow(Math.sin((lng1 * Math.PI / 180 - lng2 * Math.PI
						/ 180) / 2), 2))) * 1000);
	}
}
